Physical shopping chart-to-mobile device associations

ABSTRACT

In some implementations, a system for providing and managing associations between mobile computing device and physical shopping carts used in retail stores includes a physical shopping cart configured to transport physical goods around a store. The physical shopping cart includes a product detection system that is programmed to detect products that are placed in the physical shopping cart, a wireless transceiver to wirelessly communicate with other devices, and a cart identifier that uniquely identifies the physical shopping cart. The system further includes a mobile computing device that is programmed (i) to obtain the cart identifier for the shopping cart, (ii) to establish an association with the physical shopping cart using the cart identifier, and (iii) once the association between the physical shopping cart and the mobile computing device has been established, to output a user interface that provides a real-time summary of the products in the physical shopping cart.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.16/263,937 filed Jan. 31, 2019 that claims the benefit of U.S.Provisional Application Ser. No. 62/624,243, filed Jan. 31, 2018. Thedisclosure of the prior application is considered part of (and isincorporated by reference in) the disclosure of this application.

TECHNICAL FIELD

This document generally relates to physical shopping carts that are usedin physical retail stores and other shopping establishments, and to theassociation of mobile computing devices with such physical shoppingcarts.

BACKGROUND

Physical shopping charts have been used in retail stores and a varietyof other shopping establishments (e.g., grocery stores, home improvementstores) to provide customers with a way to collect and transport itemsto a check-out area (e.g., point of sale terminal, cashier). Althoughphysical shopping carts have a variety of different form factors andconfigurations, physical shopping carts generally include a frame, anarea for the placement of items (e.g., basket, bin, platform), and ahandle or other mechanism for customers to move the cart around.Physical shopping carts can include wheels on which the frame is mountedto permit the cart to be pushed around a store. Alternatively, physicalshopping carts can include a handle or other mechanism permitting usersto carry carts around a store.

SUMMARY

This document generally describes technology for providing physicalshopping carts with product detection systems and associating physicalshopping carts with mobile computing devices (e.g., smartphones, tabletcomputing devices, smart watches, wearable computing devices). Forexample, physical shopping carts can be equipped with one or moreproduct detection systems (e.g., scanners, sensors, cameras) that canelectronically tally products that are placed in physical shoppingcarts. Mobile computing devices can be associated with physical shoppingcarts to provide a variety of enhanced shopping cart features notpossible with conventional physical shopping carts, such aselectronically tracking the contents of a shopping cart, checking-outfrom the mobile computing device (instead of at conventional check-outareas, such as point of sale terminals), and others. Mobile computingdevices can be associated with physical shopping carts in any of avariety of ways, such as through a computer system (e.g., cloud-basedserver system) that is in communication with both mobile computingdevices and physical shopping carts and/or through a direct wirelesspairing of a mobile computing device to a physical shopping cart. Othertechniques for associating mobile computing devices and physicalshopping carts are also possible.

In some implementations, a system for providing and managingassociations between mobile computing device and physical shopping cartsused in retail stores includes a physical shopping cart that isconfigured to transport physical goods around a store. The physicalshopping cart includes a product detection system that is programmed todetect products that are placed in the physical shopping cart, awireless transceiver to wirelessly communicate with other devices, and acart identifier that uniquely identifies the physical shopping cart. Thesystem further includes a mobile computing device that is programmed (i)to obtain the cart identifier for the shopping cart, (ii) to establishan association with the physical shopping cart using the cartidentifier, and (iii) once the association between the physical shoppingcart and the mobile computing device has been established, to output auser interface that provides a real-time summary of the products in thephysical shopping cart.

Some implementations can further include one or more of the followingfeatures. The system can further include a remote server system tomanage associations between physical shopping carts and mobile computingdevices. The remote server system can include a cart-to-deviceassociation database that stores current cart-to-device associationsbetween physical shopping carts and mobile computing devices. The remoteserver system can be programmed (i) to receive an association requestfrom the mobile computing device that includes the cart identifier forthe physical shopping cart and an identifier for the mobile computingdevice, (ii) to query the cart-to-device association database todetermine whether the physical shopping cart is free to be associatedwith the mobile computing device, and (iii) in response to determiningthat the shopping cart is free to be associated with the mobilecomputing device, to add the association between the mobile computingdevice and the physical shopping cart to the cart-to-device associationdatabase. The remote server system can further include a cart contentsdatabase that stores product records of products that are currentlycontained in physical shopping carts. The wireless transceiver of thephysical shopping cart can be programmed to transmit product informationfor the products detected by the product system to the remote serversystem. The remote server system can further be programmed (i) toidentify the products contained in the physical shopping cart using theproduct information, (ii) to update the product records for the physicalshopping cart based on the identified products, and (iii) to transmitcurrent cart contents for the physical shopping cart to the mobilecomputing device based on the association between the physical shoppingcart and the mobile computing device stored in the cart-to-deviceassociation database. The mobile computing device can further beprogrammed (i) to receive the current cart contents from the remoteserver system and (ii) to update the real-time summary of the productsin the physical shopping cart in the user interface using the currentcart contents received from the remote server system. The real-timesummary can include graphical elements identifying the products that arecurrently contained in the physical shopping cart, quantities of theproducts, and prices of the products, and a graphical element providinga total price for the products contained in the physical shopping cart.The user interface can further include a selectable element to checkouton the mobile computing device for the products contained in thephysical shopping cart. Selection of the selectable element can causethe mobile computing device to initiate a checkout process with theremote server system and, once the checkout process has been completed,to output a checkout confirmation on the mobile computing device toverify that payment for products contained in the physical shopping carthas been received by the remote server system. The checkout process canbe performed without a user of the mobile computing device using a pointof sale terminal at a store where the physical shopping cart is located.At least some of the product information can be provided to the remoteserver system without a confirmed product identification and the remoteserver system processes the product information to determine an accurateproduct identification.

The remote server system can further be programmed (i) to receive statusinformation for, at least, the mobile computing device and (ii) to breakthe association between the mobile computing device and the physicalshopping cart based on analysis of the status information. The statusinformation can include confirmation that the mobile computing devicehaving completed a checkout process for the physical shopping cart. Theremote server system can break the association in response to receivingthe confirmation of the completed checkout process. The statusinformation can include confirmation that the mobile computing devicehas physically left a geofenced area that is associated with a storewhere the physical shopping cart is located. The remote server systemcan break the association in response to receiving the confirmation thatthe mobile computing device has left the geofenced area. The statusinformation can include information indicating an amount of time thathas elapsed since the mobile computing device was physically proximateto the physical shopping cart. The remote server system can break theassociation in response to determining that the mobile computing devicehas been physically separated from the physical shopping cart forgreater than a threshold period of time based on the amount of time.Breaking the association can cause the association to be removed fromthe cart-to-device association database and for product information forthe physical shopping to no longer be transmitted by the remote serversystem to the mobile computing device.

The association can be established by the remote server system withoutcommunication between the mobile computing device and the physicalshopping cart. The association can be established by the remote serversystem based on wireless communication between the mobile computingdevice and the physical shopping cart. The wireless communication caninclude a wireless pairing between the mobile computing device and thephysical shopping cart. The cart identifier can include a physicalmarking on one or more surfaces of the physical shopping cart. Themobile computing device can be programmed to optically obtain the cartidentifier using one or more digital cameras that are part of the mobilecomputing device. The physical marking can include a barcode or a QRcode. The cart identifier can include an RFID tag that is affixed to orembedded within one or more structures of the physical shopping cart.The mobile computing device can be programmed to obtain the cartidentifier using a wireless transceiver that is part of the mobilecomputing device. The cart identifier can include a digital data isstored in non-volatile memory on the physical shopping cart. The mobilecomputing device can be programmed to obtain the cart identifier throughwireless communication with the physical shopping cart via the wirelesstransceiver of the physical shopping cart. The wireless communicationcan include a wireless pairing between the mobile computing device andthe wireless transceiver of the physical shopping cart. The mobilecomputing device can include a smartphone. The physical shopping cartcan include a retail shopping cart that includes wheels, a productbasket or bin, and a handle. The product detection system canautomatically detect products that are placed in the physical shoppingcart and can include a collection of one or more of the following:sensors, cameras, and scanners. The product detection system can bemanually operated and can include a barcode scanner device that istethered to the physical shopping cart.

The systems, devices, program products, and processes describedthroughout this document can, in some instances, provide one or more ofthe following advantages. By associating physical shopping carts withmobile computing devices, enhanced shopping features can be provided tousers. For example, users can receive a running tally of the items thathave been placed in their shopping carts, including a total cost of theitems in the cart. With conventional shopping carts, users often did nothave a clear idea of the total cost of items in a shopping cart untilthey went through the checkout process because manually tracking thecost of all items in the cart (and taking into account discounts, sales,applicable taxes, etc.) was tedious. With cart-to-mobile deviceassociations, a running tally of not only the contents of the shoppingcart can be presented to the user in real time as the user progressesthrough a store, but a total cost of the items in the cart can bepresented to a user (including discounts, sales, applicable taxes,etc.). This can make the shopping process more efficient for consumers,can help consumers with budgeting, and can help consumers adhere toshopping lists and other consumer planning.

In another example, other enhanced shopping features that can beprovided include the ability for users to complete the checkout processon their mobile computing devices without having to go to a checkoutarea (e.g., checkout lane, point of sale terminal, self-checkoutsystem). This can save users time and simplify the shopping process,particularly during busy shopping periods within retail stores whenwaiting in line for either a cashier or an available self-checkoutterminal can be customary.

In another example, enhanced shopping features provided bycart-to-mobile device associations also include the ability for users toverify not only that the item placed in a cart was correctly identified,but also that the price associated with the item is correct. Forexample, when there are many similar items on a store shelf (e.g., sameproduct with different package sizes), it may be difficult to identifythe specific price that is associated with each item. Cart-to-mobiledevice associations can permit for pricing information for each itemplaced in a cart to be verified on a user's mobile computing device,which can resolve ambiguity and uncertainty for users. Additionally, itcan help users understand whether any sales or discounts apply toparticular items, and to resolve any discrepancies between advertisedand presented pricing.

In another example, cart-to-device associations can be established andmaintained by a computer system (e.g., cloud-based computer system),which can account for separation between a user and a cart in both timeand space. By using a computer system to manage cart-to-device basedassociations (instead of relying on direct cart-to-device wirelesspairings, for example), a cart can stay associated with a mobilecomputing device even if the mobile computing device is separated fromthe cart (e.g., outside of wireless communication range) for a period oftime. For instance, a user may place a couple items in a shopping cart,but then park the shopping cart in a particular location for a whilewith the intention of returning to the cart later to complete theshopping trip (e.g., leave the cart in an uncrowded part of the store toavoid traffic jams when venturing into a more crowded area of the store,leave the cart with one person while others in the group go to differentparts of the store, leave the cart to run another errand within thestore, such as a wellness checkup, a bathroom break, a meal). By using acomputer system to manage cart-to-device associations, associations canbe maintained regardless of separations in distance and time between amobile device and the associated cart.

In another example, cart-to-device associations that are provided via anetworked platform (e.g., cloud based platform) permit multiple users toshop together (e.g., a couple, friends) with a shared digital shoppingcart. For instance, a networked platform can permit multiple users toshare a cloud-based digital cart so that users can physically split upin the store, pickup, and scan items into separate physical shoppingcarts that would appear in the same digital shopping cart that is sharedacross the multiple users and the multiple carts. This would allowmultiple users to share a common cloud cart and have a single paymentstep, if desired. Additional and/or alternative co-shopping and/or groupshopping can also be provided.

In another example, cart-to-device associations permit for shoppingcarts with product detection systems to leverage the prevalence ofmobile computing devices, such as smartphones, in society to provideenhances shopping features without requiring display screens and otheruser interface features on the shopping cart itself. For example,incorporating displays, keypads, and other user interface features ontoa shopping cart can add complexity and cost to shopping cart, which canbe a barrier to actually deploying the shopping carts in a retailenvironment, to users being able to use the carts, and to the durabilityof the shopping carts (e.g., carts with displays being left outside inthe rain, cold, and heat may require more frequent repair andmaintenance). In contrast to an embedded display solution (i.e.,shopping cart with a display incorporated onto the cart), shopping cartscan be associated with mobile computing devices that users carry withthem (e.g., smartphones) to provide the enhanced shopping featureswithout the drawbacks of an embedded solution. For example, thenear-total adoption of smartphones and other mobile computing devicetechnology in society means that nearly every person (or group) enteringa retail store brings with them a device with a display and userinterface features. By associating these mobile computing devices withshopping carts that are equipped to detect products that have been addedto the cart, enhanced shopping features can be seamlessly provided tousers on their mobile devices and without the need for an embeddeddisplay solution. This can permit more widespread deployment of shoppingcarts with product detection systems and enhanced shopping cartfeatures.

In another example, cart-to-device associations provide users with theability to readily verify the quantity of items in the shopping cart bysimply looking at the user interface on the mobile device. This is animprovement over traditional physical shopping experiences, in which auser would physically locate and tally items in the cart to determinethe quantity of items that the user current has. In contrast,cart-to-device associations permit a user to readily determine thequantity of items in the cart without any physical actions related tothe items (e.g., no physical identification and tallying of items).Cart-to-device associations also permit users to quickly and accuratelymodify/change quantities of items in the cart by, for example,physically adding or removing single items from the cart until the userinterface reflects the desired number of items.

Additional Advantages

-   -   Related to [0008] Association to cloud based platform would all        multiple users shopping together (a couple or friends) to share        a physical cart and a cloud based digital cart allows the two        users to split up in the store, pickup, and both scan items that        would land in the same digital cart and enable. This would allow        multiple users to share a common cloud cart and have a single        payment step if desired. Co-shopping or group shopping.

Other features, aspects and potential advantages will be apparent fromthe accompanying description and figures.

DESCRIPTION OF DRAWINGS

FIG. 1 is a conceptual diagram of an example system for associating anexample mobile computing device with an example shopping cart.

FIG. 2 is a conceptual diagram of an example system for associating anexample mobile computing device with an example shopping cart using acomputer system.

FIG. 3 is an example process flow for associating an example mobilecomputing device with an example shopping cart in the system depicted inFIG. 2 .

FIG. 4 is a conceptual diagram of an example system for associating anexample mobile computing device with an example shopping cart over alocal network.

FIGS. 5A-B are example process flows for associating an example mobilecomputing device with an example shopping cart in the system depicted inFIG. 4 .

FIGS. 6A-C are screenshots of an example mobile app running on a mobilecomputing device to establish a cart-to-device association.

FIG. 7 is a diagram of a conceptual system in which a cart-to-deviceassociation is broken.

FIG. 8 is a flowchart of an example process for determining whether acart-to-device association should be broken.

FIG. 9 is a schematic diagram that shows an example of a computingsystem.

Like reference symbols in the various drawings indicate like elements

DETAILED DESCRIPTION

This document generally pertains to associating mobile computing deviceswith shopping carts to provide enhanced features to users related to theshopping cart. For example, a shopping cart can be equipped with aproduct detection system that is configured to automatically detectproducts that are placed in (and/or removed from) the shopping cart. Theshopping cart can be equipped to, either directly or via an intermediarycomputer system (e.g., cloud based computer system) to convey thisproduct information to the mobile computing device, which can permit avariety of enhanced features to be provided to users. For example, acurrent list of items in the shopping cart, including their quantities,pricing, discounts, and other details can be presented on an associatedmobile computing device, which permit users to track the current tallyof items in the cart, to verify pricing information, and to locallycheckout on the mobile device without having to go to a checkout area ofthe retail store.

FIG. 1 is a conceptual diagram of an example system 100 for associatingan example mobile computing device 102 with an example shopping cart104. The mobile computing device 102 can be any of a variety of mobilecomputing device with a display (and/or other mechanism to outputinformation to a user) and user interface features (e.g., touchscreen,microphone with voice interface, keys, buttons), such as smartphones,smart watches, tablet computing devices, wearable computing devices,and/or others. The shopping cart 104 can be any of a variety of physicalapparatus or device to assist users with gathering and/or transportingphysical products around a retail store (e.g., brick and mortar store),such as a push-based cart with wheels (as depicted), a smaller shoppingbasket that users carry, and/or others.

The shopping cart 104 includes an example product detection system 106that is configured to detect products 108 a-n that are placed in theshopping cart 104. The product detection system 106 can be any of avariety of system to automatically (without user direction) or manually(with user direction) detect the products 108 a-n. For example, theproduct detection system 106 can be a system that includes a collectionof sensors, cameras, scanners, and/or other devices to automaticallydetect the products 108 a-n as they are placed in (and removed from) theshopping cart 104. Such a product detection system 106 may performautomatic product detection locally (e.g., using a local computingdevice that is part of the local product detection system 106 on theshopping cart 104) and/or remotely through communication with a remotecomputer system (e.g., cloud computer system). For instance, the localproduct detection system 106 may collect signals from sensors, scanners,cameras, and/or other devices and transmit them to a remote computersystem for processing and ultimate product identification. Such aconfiguration (local collection of product signals and transmission to aremote system for analysis and product detection) can permit for thelocal product detection system 106 on the shopping cart 104 to besimplified and to require fewer computing resources.

In another example, the product detection system 106 can be a scanner(e.g., barcode scanner, QR code scanner, RFID scanner) and/or otherdevice that users can manually operate to obtain information identifyingthe products 108 a-n. For example, the product detection system 106 canbe a handheld scanner device attached to the shopping cart 104 thatusers can manually operate to scan the products 108 a-n as they areplaced in the cart 104. The scans can generate a unique identifier forthe product (e.g., universal product code (UPC)) that can be used tolookup the product information, including the product description,price, sale information, etc.

The mobile computing device 102 can be associated with the shopping cart104 can its product detection system 106, as indicated by theassociation 108. The association can be instantiated, maintained, andmanaged locally between the device 102 and the cart 104, and/or remotelyby a computer server system, such as a cloud-based computer system thatis accessible by both the mobile computing device 102 and the shoppingcart 104. The shopping cart 104 can include one or more wirelesstransceivers that are able to communicate via short, medium, and/or longrange wireless channels to communicate over one or more wirelessnetworks (e.g., store-based wireless network, mobile data network,cellular network, point to point network with mobile computing device102) with such a remote computer system and/or with the mobile computingdevice 102.

The association between the mobile computing device 102 and the shoppingcart 104 can be established in any of a variety of ways. For example, insome instances the mobile computing device 102 can detect a uniqueidentifier for the shopping cart 104 (e.g., QR code, barcode, RFID tag,MAC address) that the mobile computing device 102 transmits to a remotecomputer system to request the device 102 and the cart 104 be associatedwith each other. The remote computer system can evaluate whether thecart 104 is free to be associated with the mobile computing device 102(e.g., check wither the cart 104 is currently associated with anotherdevice) and, if the cart 104 is free, can establish the associationbetween the device 102 and the cart 104.

In another example, in some instances, the mobile device 102 can performa wireless pairing operation (e.g., BLUETOOTH low energy (BLE) pairing,WiFi Direct pairing, near-field communication (NFC) pairing) with theshopping cart 104 to establish an association with the cart 104. Forinstance, the mobile device 102 can wirelessly pair with the productdetection system 106, which can be a barcode scanner, for example. Suchan association may be additionally conveyed to and managed by a remotecomputer system, which can ensure that the cart 104 is free to beassociated with the mobile device 102.

Once the association 108 is established between the mobile computingdevice 102 and the cart 104, the products 108 a-n that are detected bythe product detection system 106 can be conveyed, either directly orindirectly, to and presented on the mobile computing device 102. Anexample user interface is presented on the device 102, which includes asection 110 confirming the association with the cart 104 (where “XY” isan example unique identifier for the cart 104) and a section 112 listingthe products 108 a-n that have been detected by the product detectionsystem 106 along with their descriptions (“Product A”), quantities(“x1”), and price (“$5), as well as a total tally for all of theseproducts (“$19”). Additionally and/or alternate product information canbe presented in the section 112. The user interface also includes aselectable feature 114 to initiate a checkout process on the mobiledevice 102, which can permit the user to pay for all of the itemsincluded in the cart 104, which are shown on the user interface in thesection 112.

Once the checkout process on the mobile device 102 has been completed,the user may receive one or more instructions on the mobile device 102to verify that payment has been processed for the cart 104 when exitingthe store. For example, the mobile device 102 may present a paymentverification code (e.g., QR code, barcode, unique alphanumeric string)that can be scanned by a person or machine at the store's exit toindependently verify the payment with a remote computer system. In someinstances, verification can also involve presenting the store's exitmonitoring system, which may be manual and/or automatic, withinformation on products that were included in the processed payment,which can be used to verify whether the cart 104 includes any productsthat were not covered by the processed payment. Such verification can bea spot-check (e.g., look for presence of one or more particular items inthe cart 104 from the processed payment) and/or a whole cart analysis(e.g., verify entire contents of cart 104 correllate to processedpayment). In another example, a unique identifier on the cart 104 can bescanned (in addition to or instead of) scanning a code from the mobiledevice 102 to pull up information on the products contained in the cart104 and to verify the processed payment at the store's exit. Other exitverification systems are also possible.

FIG. 2 is a conceptual diagram of an example system 200 for associatingan example mobile computing device 202 with an example shopping cart 204using a computer system 216. The mobile computing device 202 can besimilar to the mobile computing device 102 described above with regardto FIG. 1 , and the shopping cart 204 can be similar to the shoppingcart 104 described above with regard to FIG. 1 . The computer system 216can be any of a variety of appropriate computer systems, such as aremote cloud-based server system, a store-based computer system, and/orcombinations thereof.

In the example system 200, the mobile computing device 202 and the cart204 establish an association through communication with the computersystem 216. While the association between the mobile computing device202 and the cart 204 can involve communication between the mobilecomputing device 202 and the cart 204, the association between them maybe established alone by communication with the computer system 216.

The shopping cart 204 includes a system 206 to provide product detectionand device association features. The system 206 includes a productdetection system 208 to detect products that are placed in and/orremoved from the cart 204 (similar to the product detection system 106described above with regard to FIG. 1 ), a wireless transceiver 210(e.g., Wi-Fi chipset, BLUETOOTH chipset, 4G LTE chipset, cellularnetwork transceiver, NFC chipset) to wirelessly transmit and receiveinformation, a power source 212 (e.g., battery system, local powergeneration device) to supply power to the product detection system 208and the wireless transceiver 210, and a cart identifier 214 thatuniquely identifies the cart 204. The cart identifier 214 can be alabel, marking, and/or other information that is physicallyaffixed/provided on one or more surfaces of the cart 204. For example,the cart identifier 214 can be a QR code that is affixed to on one ormore surfaces of the cart 204, such as near the handle area of the cart204, that can readily be captured by a camera of the mobile computingdevice 202. The cart identifier 214 can, additionally and/oralternatively, be a value that is wirelessly detectable by the mobilecomputing device 202, such as an RFID tag that is embedded in the cart204, an identifier that is wirelessly transmitted by the cart 204 (e.g.,transmitted via wireless beacon, transmitted via NFC connection), and/orother wireless transmission techniques.

In the example system 200 that is depicted, cart 204 communicates withthe computer system 216 via an in-store communications network 228(e.g., Wi-Fi network, BLE network) that is based in the store where thecart 204 is located. The in-store network 228 can be a private/securednetwork that is not open to the public generally (i.e., devices withoutnetwork credentials or a passcode). In contrast, the mobile computingdevice 202 can communicate with the computer system 216 via one or morethird party networks 226 that are different from the in-store network228. Such third-party networks 226 can include, for example, a mobiledata network (e.g., 4G LTE network) to which the mobile computing device202 subscribes, cellular networks, other wireless networks (e.g.,open/public Wi-Fi networks within a store), and/or combinations thereof.Although not depicted, in some instances the cart 204 and the mobilecomputing device 202 can communicate with the computer system 216 overthe same network.

The computer system 216 manages device-to-cart associations and theenhanced features that are associated therewith using several differentdatabases 218-224. An account database 222 includes user accountinformation, including preapproved payment methods (e.g., stored creditcard information, stored bank account information), contact information(e.g., phone number, email address), preferences (e.g., text messagespreferred), name (e.g., first and last name), account identifier (e.g.,username), login information (e.g., password, login credentials,certificate), and/or other information. The information stored in theaccount database 222 can be used for a variety of tasks, includingprocessing a checkout request from the mobile computing device 202 tocheckout for items in the cart 204.

A device-to-account association database 218 stores informationcorrelating particular user accounts to particular mobile computingdevices. For example, a user may have three different mobile devices(e.g., smartphone, tablet, smartwatch) that each have installed a mobileapplication to provide enhanced cart-related features on the mobiledevices. The device-to-account association database 218 can provideentries that link each of these three different mobile computing devicesto the same user account from the accounts database 222. Devices can beidentified in these entries by a unique identifier that uniquelyidentifies the devices, such as MAC address for the device, a uniquedevice identifier generated by the computer system 218 and stored on thedevice 202, and/or others. Entries in the device-to-account associationdatabase 218 can be created when, for example, a user logs in on thedevice 202, as verified by the computer system 216.

A cart-to-device association database 220 can store the associationsbetween the cart 204 and the device 202. These associations can becreated in any of a variety of ways, as discussed above and below withregard to FIG. 3 . For example, the mobile computing device 202 toperform a barcode/QR code scan on the cart 204 to obtain the cartidentifier 214, which can be transmitted to the computer system 216. Thecomputer system 216 can query the cart-to-device association database220 to determine whether the cart 204 is free to be associated with thedevice 202, and if so, can create an entry in the database 220 for thenew association between the device 202 and the cart 204.

A cart contents database 224 stores the contents of the cart 204 basedon products detected by the product detection system 208. The cartcontents database 224 can store entries in association with the cartidentifier 214, which then then be correlated to an associated device202 using entries in the cart-to-device associations database 220 and toa corresponding user account (stored in the accounts database 222) forthe device 202 using the entries in the device-to-account associationsdatabase 218. These associations can be used to ensure that the correctcart contents 224 for the cart 204 are being transmitted to andpresented on the associated device 202 and that payment is beingprocessed for the correct user account associated with the device 202.

FIG. 3 is an example process flow 300 for associating the device 202with the cart 204 in the system 200 depicted in FIG. 2 .

Referring to step A (302), the mobile computing device 202 detects thecart identifier 214 for the cart 204. Detection of the cart identifier214 can be performed by the mobile computing device 202 in any of avariety of ways. For example, a user of the mobile computing device 202can select an option to scan a code (e.g., barcode, QR code) on the cart204 on a mobile app that is running on the device 202, and can then bepresented with a screen to grab an image of the code providing the cartidentifier 214. In another example, a user of the mobile computingdevice 202 can select an option to obtain the cart identifier 214wirelessly on a mobile app running on the device 202, and can bepresented with instructions on how and where to place the device 202relative to the cart 204 to obtain the cart identifier 214 wirelessly(e.g., RFID, NFC). Other options for obtaining the cart identifier 214on the mobile computing device 202 are also possible.

Once the cart identifier has been obtained, the mobile device 202 cantransmit a cart association request with the cart identifier 306 to thecomputer system 216 via the third party network 226, as indicated bystep B (304). The request can additionally include information thatuniquely identifies the device 202 on the computer system 216, which canbe correlated to an entry in the device-account associations database218.

The computer system 216 receives the request, queries the cart-deviceassociations 220 to ensure that the cart 204 is free to be associatedwith the device 202, and, if it is free, can associate the cart 204 tothe device 202, as indicated by step C (308). Associating the cart 204to the device 202 can include, for example, creating an entry in thecart-to-device associations database 220 for the cart 202 and the device204, which can include information identify the cart 204, the device202, a timestamp for when the association was created, a store locationfor the cart 204, recent status information for the cart 204 and/or thedevice 202 (e.g., last time a product was detected on the cart 204, lasttime the mobile app on the device 202 received user input and/or hadfocus on the device 202), and/or other information for managing thecart-to-device associations. In the event that either the device 202 orthe cart 204 are already identified in the database 220 has having apreexisting association with another cart or device, the computer system216 can return that information to the mobile device 202 forpresentation to the user. For example, if the device 202 is alreadyassociated with another cart, the user can be presented with an optionon the device 202 to break that other association and to insteadassociate the device 202 with the cart 204. In another example, if thecart 204 is already associated with another device, the user may simplybe presented with information indicating that this cart is alreadyassociated with another device. In some cases (e.g., preexistingassociation is old (e.g., greater than a threshold period of time), norecent activity related cart 204, few or no items in cart 204 based onthe cart contents database 224), the user may be presented with anoption to request that this preexisting association with another deviceand the cart 204 be broken, in which case the computing device 216 cancontact the other device to which the cart 204 was already associated toobtain consent from that user to break the association. If that userprovides approval or does not respond within a threshold amount of time(e.g., within 2 minutes, within 5 minutes, within 10 minutes), then theprevious association can be broken and a new association between thedevice 202 and the cart 204 can be established. Other alternatives fordetermining cart-to-device associations are also possible.

Once the cart 204 has been associated with the device 202, aconfirmation can be transmitted form the computer system 216 to thedevice 202, as indicated by step D (310), and output on the device 202,as indicated by step E (312). Now that the device 202 and the cart 204are associated with each other, enhanced shopping features related tothe cart 204 can be provided on the mobile computing device 202. Forexample, as products are placed in the cart 204, the product detectionsystem 208 can obtain product information that it transmits to thecomputer system 216 via the in-store network 228, as indicated by step F(314). The product information can include, for example, informationthat directly and/or indirectly identifies the products. For example,the product information may include a UPC that directly identifies theproduct placed in the cart. In another example, the product informationcan include a partial image of product packaging that indirectlyidentifies the product placed in the cart (e.g., includes someinformation to identify the product, but possibly not enough to narrowdown the product to a specific UPC).

The computer system 216 receives the product information from the cart204 and uses it to track the contents of the cart 204, as indicated bystep G (316). For example, the computer system 216 can use directproduct information to identify particular products that are in the cart204. The computer system 216 can also use combinations of indirectproduct information (e.g., images, RFID scans, sensor readings, cartlocation within a store) to identify specific products that have beenplaced in the cart 204. Product identification can be stored andmaintained in the cart contents database 224 in association with thecart 204. As items are detected as being added to the cart 204, thecomputer system 216 can add the entries for the cart in the database224. Likewise, when items are detected as being removed from the cart204, the computer system can remove entries for the cart in the database224.

The computer system 216 can transmit the cart contents to the computingdevice 202, as indicated by step H (318), which the mobile computingdevice 202 can output on its display, as indicated by step I (320). Forexample, as product are added to the cart 204, the computer system 216can transmit corresponding product information for the items added tothe cart 204 to the mobile device 202, which can add the items to thecurrent cart content tally and to the total price for the cart. The cartcontent information can be transmitted 216 in real time to the mobiledevice 202, so that the mobile device 202 is able to present anup-to-date summary of the products contained in the cart 204.

Although not depicted in FIG. 3 , the mobile computing device 202 canalso be used to checkout for the cart 204 using the current contents ofthe cart, as represented in the database 224. The checkout process caninclude, for example, a user verifying his/her intent to checkout basedon the current cart contents and price summary, and user selection of apreexisting payment method (stored in the accounts database 222). thecomputer system 216 receiving

FIG. 4 is a conceptual diagram of an example system 400 for associatingan example mobile computing device 402 with an example shopping cart 404over a local network 428. The mobile computing device 402 can be similarto the mobile computing devices 102 and 202 described above with regardto FIGS. 1-3 , and the shopping cart 404 can be similar to the shoppingcarts 104 and 204 described above with regard to FIGS. 1-3 . Thecomputer system 416 can similar to the computer system 216, and can beany of a variety of appropriate computer systems, such as a remotecloud-based server system, a store-based computer system, and/orcombinations thereof.

The example system 400 is similar to the example system 200 describedabove with regard to FIG. 2 , but with the example system 400 theassociation between the mobile computing device 402 and the shoppingcart 404 is established, at least in part, based on an communicationover the local network 428 between the mobile computing device 402 andshopping cart 404. The local network 428 can be any of a variety ofcommunication networks between mobile computing device 402 and the cart404, such as a BLUETOOTH pairing (e.g., BLE pairing), a Wi-Fi Directconnection, an NFC connection, connections to a common local wirelessnetwork (e.g., both the mobile computing device 402 and the cart 404connected to the same Wi-Fi network), wired connections between thecomputing device 402 and the cart 404 (e.g., tethered connection, suchas a wired USB connection), and/or combinations thereof.

Like the cart 204, the shopping cart 404 includes a system 406 toprovide product detection and device association features. The system406 includes a product detection system 408 to detect products that areplaced in and/or removed from the cart 404 (similar to the productdetection systems 106 and 208 described above with regard to FIGS. 1-3), a wireless transceiver 410 (similar to the wireless transceiver 210described above with regard to FIGS. 2-3 ) to wirelessly transmit andreceive information, and a power source 412 (similar to the power source212) to supply power to the product detection system 408 and thewireless transceiver 410. In some instances, the system 406 can furtherinclude a cart identifier 414 that uniquely identifies the cart 404. Thecart identifier 414 can be, for example, a value that is wirelesslydetectable by the mobile computing device 402, such as an RFID tag thatis embedded in the cart 404, an identifier that is wirelesslytransmitted by the cart 404 (e.g., transmitted via wireless beacon,transmitted via NFC connection), and/or other wireless transmissiontechniques.

With the system 400, the association between the cart 404 and thecomputing device 402 can be established based on transmission of databetween the computing device 402 and the cart 404. For example, theproduct detection system 408 can be a barcode scanner that is attachedto cart 404 and that can be paired over the local network 428 to themobile computing device 402 using the wireless transceiver 410. Thepairing, in some instances, can serve as the association between themobile computing device 402 and the cart 404. In other instances, thecart 404 can use the pairing with the mobile computing device 402 overthe local network 428 as a conduit to establish a cart-to-deviceassociation with the computer system 416. For example, the cart 404 maycommunicate with the computer system 416 by having the mobile device 402effectively relay communication from the cart 404 to the computer system416. The mobile computing device 402 can communicate with the computersystem 416 over a third party network 426 (similar to the third partynetwork 226). The computer system 416 can be similar to the computersystem 216, and can maintain databases 418-424 (similar to databases218-242) that can be used to manage cart-to-device associations andenhanced features related thereto.

FIGS. 5A-B are example process flows 500 and 550 for associating thedevice 402 with the cart 404 in the system 400 depicted in FIG. 4 .

Referring to FIG. 5A, the example process flow 500 in which the cart 404is paired to the mobile computing device 402 over the local network 428and the computer system 416 manages the cart-to-device associationbetween the device 402 and the cart 404. As indicated by step A (502),the mobile computing device 402 and the cart 404's wireless transceiver410 are wirelessly paired. Using this wireless pairing, the mobilecomputing device 402 obtains the cart identifier 414 from the cart 404,which the mobile computing device 402 transmits to the computer system416 with a cart association request, as indicated by step B (504, 506).Similar to step C (308) in process flow 300, the computer system 416checks whether it is able to associate the cart 404 with the device 402using the databases 418-424 and, if it is able to make the association,proceeds with associating the cart 404 to the device 402, as indicatedby step C (508). The association confirmation can be transmitted to themobile computing device 402, as indicated by step D (510), and can beoutput on the mobile computing device 402, as indicated by step E (512).

Now that the mobile computing device 402 and the cart 404 are associated(and paired) with each other, the product detection system 408 candetect products that are placed in and/or removed from the cart 404,which can permit enhanced shopping cart features to be presented on themobile computing device 402. Similar to step F (314) in the process flow300, the product detection system 408 can obtain direct and/or indirectproduct information which, in process flow 500, is transmitted to themobile computing device 402 over the local network 428, as indicated bystep F (514). The mobile computing device 402 can retransmit the productinformation to the computer system 416, as indicated by step G (516) forthe computer system 416 to determine and track the cart contents,similar to the computer system 216 in system 200. However, unlike thesystem 200, with the system 400 the product information is coming fromthe mobile computing device 402 instead of from the cart 404 itself.This configuration in system 400 can be beneficial in that it can permitthe cart 404 and its wireless transceiver 410 to be shorter range andlower power, which can cause the wireless transceiver 410 to consumeless energy from the power source 412 (which can extend the duration ofeach battery charge, for example) and can cause the wireless transceiver410 to be less expensive and less complicated to implement in the cart404. However, the wireless pairing between the mobile computing device402 and the cart 404 may restrict the flexibility and mobility of a userand his/her device 402 relative to the cart 404 so as to avoid breakingthe wireless pairing. Similar to the steps G-I (316-320) in the processflow 300, the computer system 416 can track the contents of the cart 404and transmit updates on the cart contents to the mobile computing device402, which can output the cart contents, as indicated by steps H-J(518-522).

Referring to FIG. 5B, the example process flow 550 is similar to theprocess flow 500, but the process flow 550 has the pairing between themobile computing device 402 and the cart 404 represent thecart-to-device association. This is in contrast to the process flow 500,which uses the cart-to-device pairing to obtain the cart identifier 414,but relies on the computer system 416 to manage and regulatecart-to-device associations. In the process flow 550, the cartidentifier 414 is optional and, in some instances, may not be used aspart of the pairing process. As a result, the process flow 550 caninclude a subset of the steps that are included in the process flow 500.For example, the process flow 550 includes pairing between the cart 404and the device 402 (step A, 552), the cart 404 transmitting productinformation to the mobile computing device 402 (step B, 554), the mobilecomputing device 402 transmitting the product information to thecomputer system 416 (step C, 556), the computer system 416 tracking thecart contents (step D, 558), the cart contents being relayed back to themobile computing device 402 (step E, 560), and the mobile computingdevice outputting the cart contents (step F, 562).

The process flows 500 and 550 can both include additional enhancedfeatures that are not depicted, including permitting a user to checkoutthe cart 404 on the mobile computing device 402, as described above withregard to the process flow 300. Other enhanced features are alsopossible.

FIGS. 6A-C are screenshots of an example mobile app running on a mobilecomputing device to establish a cart-to-device association. The examplescreenshots and the mobile app can run on any of a variety of mobilecomputing devices, such as the mobile computing device 102, 202, and/or402 described above with regard to FIGS. 1-5 .

Referring to FIG. 6A, a first screenshot of a user interface 600 ispresented for associating a mobile computing device with a shoppingcart. The user interface 600 includes several features, including abarcode scanning feature 602 (represented by a selectable icon/button)that a user can select to manually scan products using the mobiledevice. For example, the barcode scanning feature 602 can activate oneor more on device cameras (or other associated cameras, such as camera'sin other devices that are paired to the mobile computing device).Another feature presented in the user interface 600 is a cart pairingfeature 604 that is selectable to initiate a process to associate themobile computing device with a shopping cart.

Referring to FIG. 6B, in response to a user selecting the pair 604feature the mobile computing device activates the camera (or othercamera associated with the mobile computing device) and presents acamera view 606 in the user interface. The camera view 606 can assist auser in locating a barcode 608 on a shopping cart. Once a sufficientlyclear image of the barcode 608 has been obtained by the mobile computingdevice (e.g., image processing and barcode scanning techniques can beused to determine when the contents of the barcode 608 have beenaccurately read and identified), the mobile computing device can provideconfirmation to the user. Additionally, once the barcode 608 has beenread (and the cart identifier obtained), the mobile computing device caninitiate a pairing process, such as the pairing process 300 involvingtransmission of the cart identifier (represented by the barcode 608) toa remote server system.

Referring to FIG. 6C, the user interface can present confirmation 610that the cart with the barcode 608 has been associated with the mobilecomputing device. For example, the confirmation 610 includes a uniqueidentifier (e.g., cart identifier) for the cart, which may be visuallyprinted somewhere on the cart so that the user can verify thatassociation was correct.

FIG. 7 is a diagram of a conceptual system 700 in which a cart-to-deviceassociation is broken. The example system 700 includes the components ofsystem 100 described above with regard to FIG. 1 , with an additionalcomputer system 702, which can manage the cart-to-device associations,similar to the computer systems 216 and 416 described above with regardto FIGS. 2-5 .

At step A (704), the mobile computing device 102 transmits statusinformation to the computer system 702. The status information includes,for example, a current geographic location of the device 102, a currentlocation within a store for the device 102, a binary value indicatingwhether the mobile computing device 102 is located within a boundedgeographic area associated with a store, movement information (e.g.,information indicating whether the device 102 is or has been moving),mobile app focus information (e.g., information indicating whether acart mobile app has focus on the device's display), information on acheckout process (e.g., selection of the checkout feature 114), and/orothers. In some implementations, cart status information is alsotransmitted by the computer system 702, as indicated by step B (706).Cart information can include, for example, information on a currentlocation of the cart 104 (e.g., location within a store, geographiclocation), information indicating whether the cart 104 is located withinor outside of a store, movement information (e.g., motion sensorinformation), information on nearby wireless devices (e.g., detectedwireless signals), and/or other information.

The computer system 702 can process the device information and/or thecart status information to determine whether to break the association108 between the device 102 and the cart 104. Any of a variety ofappropriate conditions and scenarios can cause the association 108 to bebroken, including a checkout process having been completed, the mobilecomputing device 102 having left a bounded geographic area (e.g.,geographic area around the store and its parking lot, geographic areaaround the store's perimeter), the cart 104 and the device 102 havingbeen separated from each other for at least a threshold period of time(e.g., more than 1 hour, more than 2 hours), a request from the mobilecomputing device 102 to be associated with another cart, and/or otherevents. The computer system 702 can be programmed to provide for a widevariation in the conditions permitting associations to be maintainedand, unless there is a clear indication that the association should bebroken (e.g., checkout process completed), can maintain the association.For example, it can be time consuming to travel around a store, tocollect items, and to ensure that they are properly detected by aproduct detection system 106. By maintaining associations unless thereis a clear indication to the contrary, the computer system 706 can helpusers preserve and resume all of that effort.

FIG. 8 is a flowchart of an example process 800 for determining whethera cart-to-device association should be broken. The example process 800can be performed by any of a variety of appropriate computing devices,such as the computer system 702 described above with regard to FIG. 7 .

Mobile device status information can be received (802) and, in someimplementations, cart status information can also be received (804).Using the status information, a determination can be made as to thecurrent device-to-cart relationship (806). For example, a determinationcan be made as to what the physical relationship is (e.g., near eachother, far away from each other, device left bounding box around store),functional relationship (e.g., cart still receiving products, devicegoing through a checkout process, checkout process completed), atemporal relationship (e.g., device and cart interacting with each otherfrequently and recently, device and cart interactions separated fromeach other by time), and/or others. Using the relationship information,the computer system can determine whether any of a variety of conditionshave occurred that would cause the association to be broken (818), suchas a purchase having been completed (808), the mobile device havingphysically left a location (810) (e.g., left area of the store where thecart is located, left the physical boundary of the store, left ageographic area around the store and including the store's parking lot),a threshold amount of time having been exceeded (812) (e.g., timerelapsed since the device and cart were near each other), and/or athreshold proximity to each other having been exceeded (814) (e.g.,device and cart are separated from each other by greater than athreshold distance). If none of those conditions (and/or otherconditions indicating that the association should be broken) are met,then the association can be maintained (816).

FIG. 9 is a schematic diagram that shows an example of a computingsystem 900. The computing system 900 can be used for some or all of theoperations described previously, according to some implementations. Thecomputing system 900 includes a processor 910, a memory 920, a storagedevice 930, and an input/output device 940. Each of the processor 910,the memory 920, the storage device 930, and the input/output device 940are interconnected using a system bus 950. The processor 910 is capableof processing instructions for execution within the computing system900. In some implementations, the processor 910 is a single-threadedprocessor. In some implementations, the processor 910 is amulti-threaded processor. The processor 910 is capable of processinginstructions stored in the memory 920 or on the storage device 930 todisplay graphical information for a user interface on the input/outputdevice 940.

The memory 920 stores information within the computing system 900. Insome implementations, the memory 920 is a computer-readable medium. Insome implementations, the memory 920 is a volatile memory unit. In someimplementations, the memory 920 is a non-volatile memory unit.

The storage device 930 is capable of providing mass storage for thecomputing system 900. In some implementations, the storage device 930 isa computer-readable medium. In various different implementations, thestorage device 930 may be a floppy disk device, a hard disk device, anoptical disk device, or a tape device.

The input/output device 940 provides input/output operations for thecomputing system 900. In some implementations, the input/output device940 includes a keyboard and/or pointing device. In some implementations,the input/output device 940 includes a display unit for displayinggraphical user interfaces.

Some features described can be implemented in digital electroniccircuitry, or in computer hardware, firmware, software, or incombinations of them. The apparatus can be implemented in a computerprogram product tangibly embodied in an information carrier, e.g., in amachine-readable storage device, for execution by a programmableprocessor; and method steps can be performed by a programmable processorexecuting a program of instructions to perform functions of thedescribed implementations by operating on input data and generatingoutput. The described features can be implemented advantageously in oneor more computer programs that are executable on a programmable systemincluding at least one programmable processor coupled to receive dataand instructions from, and to transmit data and instructions to, a datastorage system, at least one input device, and at least one outputdevice. A computer program is a set of instructions that can be used,directly or indirectly, in a computer to perform a certain activity orbring about a certain result. A computer program can be written in anyform of programming language, including compiled or interpretedlanguages, and it can be deployed in any form, including as astand-alone program or as a module, component, subroutine, or other unitsuitable for use in a computing environment.

Suitable processors for the execution of a program of instructionsinclude, by way of example, both general and special purposemicroprocessors, and the sole processor or one of multiple processors ofany kind of computer. Generally, a processor will receive instructionsand data from a read-only memory or a random access memory or both. Theessential elements of a computer are a processor for executinginstructions and one or more memories for storing instructions and data.Generally, a computer will also include, or be operatively coupled tocommunicate with, one or more mass storage devices for storing datafiles; such devices include magnetic disks, such as internal hard disksand removable disks; magneto-optical disks; and optical disks. Storagedevices suitable for tangibly embodying computer program instructionsand data include all forms of non-volatile memory, including by way ofexample semiconductor memory devices, such as EPROM (erasableprogrammable read-only memory), EEPROM (electrically erasableprogrammable read-only memory), and flash memory devices; magnetic diskssuch as internal hard disks and removable disks; magneto-optical disks;and CD-ROM (compact disc read-only memory) and DVD-ROM (digitalversatile disc read-only memory) disks. The processor and the memory canbe supplemented by, or incorporated in, ASICs (application-specificintegrated circuits).

To provide for interaction with a user, some features can be implementedon a computer having a display device such as a CRT (cathode ray tube)or LCD (liquid crystal display) monitor for displaying information tothe user and a keyboard and a pointing device such as a mouse or atrackball by which the user can provide input to the computer.

Some features can be implemented in a computer system that includes aback-end component, such as a data server, or that includes a middlewarecomponent, such as an application server or an Internet server, or thatincludes a front-end component, such as a client computer having agraphical user interface or an Internet browser, or any combination ofthem. The components of the system can be connected by any form ormedium of digital data communication such as a communication network.Examples of communication networks include, e.g., a LAN (local areanetwork), a WAN (wide area network), and the computers and networksforming the Internet.

The computer system can include clients and servers. A client and serverare generally remote from each other and typically interact through anetwork, such as the described one. The relationship of client andserver arises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

What is claimed is:
 1. A system for providing and managing associationsbetween users and physical shopping carts used in a retail store, thesystem comprising: a physical shopping cart with a product detectionsystem that is configured to automatically identify products that areplaced in the physical shopping cart; a display device with one or morecameras, wherein the display device is configured to initiate a shoppingsessions for a user by obtaining an image of an encoded identifier usingthe one or more cameras and establishing an association between thephysical shopping cart and the user based on the encoded identifier,wherein the display device is further configured to output a userinterface that provides a real-time summary of the products in thephysical shopping cart once the association between the physicalshopping cart and the user has been established; a remote server systemto manage associations between a plurality of physical shopping cartsand a plurality of users, wherein the remote server system includes anassociation database that stores current associations between theplurality of physical shopping carts and the plurality of users, whereinthe plurality of physical shopping carts includes the physical shoppingcart and the plurality of users includes the user; wherein the displaydevice is programmed to: receive, from the user, a request to establishan association between the user and the physical shopping cart, whereinthe request includes the encoded identifier, the encoded identifieridentifying the physical shopping cart, poll the association database ofthe remote server system for association data corresponding to theencoded identifier, determine, based on the association data, whetherthe encoded identifier is used for an existing association between thephysical shopping cart and another user, the another user beingdifferent than the user, generate and transmit a notification to theanother user based on a determination that the encoded identifier isused for the existing association between the physical shopping cart andthe another user, wherein the notification prompts the another user toconsent to breaking the existing association between the physicalshopping cart and the another user, and based on (i) the another userproviding user input indicating consent to break the existingassociation or (ii) a threshold amount of time passing without theanother user providing the user input, automatically break the existingassociation between the physical shopping cart and the another user andestablish the association between the user and the physical shoppingcart; wherein the display device is further programmed (i) to perform acheckout process for the products in the physical shopping cart based onthe association between the physical shopping cart and the user, and(ii) to output verification information upon successful checkout of theproducts in the physical shopping cart, the verification informationbeing configured to be accessed by a store exit monitoring system withinthe retail store to permit the user to leave the retail store withoutusing a point of sale terminal.
 2. The system of claim 1, wherein: theremote server system further stores preapproved payment information forthe plurality of users that is processed as part of the checkoutprocess, and performing the checkout process comprises receiving anindication that a checkout is being performed for the physical shoppingcart, retrieving an identifier for the user based on the associationbetween the physical shopping cart and the user, accessing preapprovedpayment information for the user based on the identifier, and processingpayment for the products in the physical shopping cart using thepreapproved payment information for the user.
 3. The system of claim 1,wherein the store exit monitoring system is configured to automaticallyverify the verification information to permit the user to leave theretail store without using the point of sale terminal.
 4. The system ofclaim 3, wherein the store exit monitoring system is positioned at ornear an exit from the retail store.
 5. The system of claim 1, whereinthe encoded identifier comprises a QR code.
 6. The system of claim 1,wherein the encoded identifier comprises a barcode.
 7. The system ofclaim 1, wherein: the remote server system further includes a cartcontents database that stores product records of products that arecurrently contained in each of the plurality of physical shopping carts,the physical shopping cart further includes a wireless transceiver totransmit product information for the products detected by the productsystem to the remote server system.
 8. The system of claim 7, wherein:the remote server system is further programmed (i) to identify theproducts contained in the physical shopping cart using the productinformation, (ii) to update the product records for the physicalshopping cart based on the identified products, and (iii) to transmitcurrent cart contents for the physical shopping cart to the displaydevice, the display device is further programmed (i) to receive thecurrent cart contents from the remote server system and (ii) to updatethe real-time summary of the products in the physical shopping cart inthe user interface using the current cart contents received from theremote server system.
 9. The system of claim 8, wherein the real-timesummary includes (i) graphical elements identifying the products thatare currently contained in the physical shopping cart, quantities of theproducts, and prices of the products, and (ii) a graphical elementproviding a total price for the products contained in the physicalshopping cart.
 10. The system of claim 9, wherein: the user interfacefurther includes a selectable element to checkout on the mobilecomputing device for the products contained in the physical shoppingcart, and selection of the selectable element causes the mobilecomputing device to initiate a checkout process with the remote serversystem and, once the checkout process has been completed, to output acheckout confirmation on the mobile computing device to verify thatpayment for the products contained in the physical shopping cart hasbeen received by the remote server system.
 11. The system of claim 10,wherein at least some of the product information is provided to theremote server system without a confirmed product identification and theremote server system processes the product information to determine anaccurate product identification.
 12. The system of claim 1, wherein: theremote server system is further programmed (i) to receive statusinformation for the physical shopping cart and (ii) to break theassociation between the user and the physical shopping cart based onanalysis of the status information.
 13. The system of claim 12, whereinbreaking the association causes the association to be removed from theassociation database and for product information for products containedin the physical shopping cart to no longer be transmitted by the remoteserver system to the display device.
 14. The system of claim 13, whereinthe display device is programed to, based on removing the associationfrom the association database, receive and output a confirmation thatthe association has been broken between the user and the physicalshopping cart.
 15. The system of claim 14, wherein the confirmationoutput by the display device indicates that the physical shopping cartis free to be associated with another user.
 16. The system of claim 1,wherein the association is established by the remote server systemwithout communication between a mobile computing device of the user andthe physical shopping cart.
 17. The system of claim 1, wherein theassociation is established by the remote server system further based onwireless communication between a mobile computing device of the user andthe physical shopping cart.
 18. The system of claim 1, wherein: thephysical shopping cart comprises a retail shopping cart that includeswheels, a product basket or bin, and a handle, wherein the productdetection system automatically detects products that are placed in thephysical shopping cart and comprises a collection of one or more of thefollowing: sensors, cameras, and scanners.
 19. The system of claim 1,wherein the product detection system is manually operated and comprisesa barcode scanner device that is tethered to the physical shopping cart.